package net.togogo.egouweb1238.core.service.order;

import java.util.List;

import net.togogo.egouweb1238.common.page.Pagination;
import net.togogo.egouweb1238.core.domain.cart.BuyCart;
import net.togogo.egouweb1238.core.domain.order.Order;
import net.togogo.egouweb1238.core.query.order.OrderQuery;



/**
 * 
 * @author stone
 */
public interface IOrderService {
	/**
	 * 基本插入
	 * 
	 * @return
	 */
	public Integer addOrder(Order order,BuyCart buyCart);

	/**
	 * 根据主键查询
	 */
	public Order getOrderById(Integer id);

	/**
	 * 根据主键批量查询
	 */
	public List<Order> getOrdersByIds(List<Integer> idList);

	/**
	 * 根据主键删除
	 * 
	 * @return
	 */
	public Integer deleteById(Integer id);

	/**
	 * 根据主键批量删除
	 * 
	 * @return
	 */
	public Integer deleteByIds(List<Integer> idList);

	/**
	 * 根据主键更新
	 * 
	 * @return
	 */
	public Integer updateOrderById(Order order);

	/**
	 * 根据条件查询分页查询
	 * 
	 * @param orderQuery
	 *            查询条件
	 * @return
	 */
	public Pagination getOrderListWithPage(OrderQuery orderQuery);

	/**
	 * 根据条件查询
	 * 
	 * @param orderQuery
	 *            查询条件
	 * @return
	 */
	public List<Order> getOrderList(OrderQuery orderQuery);
}
